/*
 * Copyright (c) 2014. kupat Corporation. All rights reserved.
 * see statement on http://www.kupat.cn.
 */

package com.kfgj.hkp.common;

import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import com.fasterxml.jackson.annotation.JsonInclude;
import lombok.Data;

import java.io.Serializable;
import java.util.Date;

/**
 * Created by liwensihan on 2014/11/5.
 *
 * 基础实体类，定义ID，所有Entity都是简单对应数据库的一张表
 * @author liwensihan
 */
@Data
@JsonInclude(JsonInclude.Include.NON_NULL)
@JsonIgnoreProperties(ignoreUnknown = true)
public abstract class BaseEntity implements Serializable {

    /**
     * id
     */
    protected Long id;

    /**
     * SAAS模式下的公司或者团队编码
     */
    protected String cpyCode;

    /**
     * SAAS模式下公司或者团队名称
     */
    protected String cpyName;

    /**
     * 所属用户编码
     */
    protected String ownerCode;

    /**
     * 所属用户姓名
     */
    protected String ownerName;
    /**
     * 数据所属部门
     */
    protected String ownerDeptCode;

    /**
     * 数据所属部门名称
     */
    protected String ownerDeptName;

    /**
     * 创建者
     */
    protected String createCode;

    /**
     * 创建者名称
     */
    protected String createName;

    /**
     * 创建者编号
     */
    protected String createDeptCode;

    /**
     * 创建者部门名称
     */
    protected String createDeptName;

    /**
     * 最后更新者
     */
    protected String lastUpdateCode;
    /**
     * 最后更新者名称
     */
    protected String lastUpdateName;

    /**
     * 创建时间
     */
    protected Date createTime;

    /**
     * 最后更新时间
     */
    protected Date lastUpdateTime;

    /**
     * 是否作废或者删除
     */
    protected Boolean isDeleted;

    /**
     * 备注描述
     */
    protected String remark;

    public String getOwnerCode() {
        return ownerCode;
    }

    public void setOwnerCode(String ownerCode) {
        this.ownerCode = ownerCode;
    }

    public String getOwnerName() {
        return ownerName;
    }

    public void setOwnerName(String ownerName) {
        this.ownerName = ownerName;
    }

    public String getOwnerDeptCode() {
        return ownerDeptCode;
    }

    public void setOwnerDeptCode(String ownerDeptCode) {
        this.ownerDeptCode = ownerDeptCode;
    }

    public String getOwnerDeptName() {
        return ownerDeptName;
    }

    public void setOwnerDeptName(String ownerDeptName) {
        this.ownerDeptName = ownerDeptName;
    }

    public String getCreateDeptCode() {
        return createDeptCode;
    }

    public void setCreateDeptCode(String createDeptCode) {
        this.createDeptCode = createDeptCode;
    }

    public String getCreateDeptName() {
        return createDeptName;
    }

    public void setCreateDeptName(String createDeptName) {
        this.createDeptName = createDeptName;
    }

    public String getCpyName() {
        return cpyName;
    }

    public void setCpyName(String cpyName) {
        this.cpyName = cpyName;
    }


    public String getCreateName() {
        return createName;
    }

    public void setCreateName(String createName) {
        this.createName = createName;
    }

    public String getLastUpdateName() {
        return lastUpdateName;
    }

    public void setLastUpdateName(String lastUpdateName) {
        this.lastUpdateName = lastUpdateName;
    }

    public String getCreateCode() {
        return createCode;
    }

    public void setCreateCode(String createCode) {
        this.createCode = createCode;
    }

    public String getCpyCode() {
        return cpyCode;
    }

    public void setCpyCode(String cpyCode) {
        this.cpyCode = cpyCode;
    }


    public String getLastUpdateCode() {
        return lastUpdateCode;
    }

    public void setLastUpdateCode(String lastUpdateCode) {
        this.lastUpdateCode = lastUpdateCode;
    }

    public void setId(Long id) {
        this.id = id;
    }

    public Long getId() {

        return id;
    }

    public Date getCreateTime() {
        return createTime;
    }

    public void setCreateTime(Date createTime) {
        this.createTime = createTime;
    }

    public Date getLastUpdateTime() {
        return lastUpdateTime;
    }

    public void setLastUpdateTime(Date lastUpdateTime) {
        this.lastUpdateTime = lastUpdateTime;
    }

    public Boolean getIsDeleted() {
        return isDeleted;
    }

    public void setIsDeleted(Boolean isDeleted) {
        this.isDeleted = isDeleted;
    }

    public String getRemark() {
        return remark;
    }

    public void setRemark(String remark) {
        this.remark = remark;
    }
}
